/**
 * This file is part of Hercules.
 * http://herc.ws - http://github.com/HerculesWS/Hercules
 *
 * Copyright (C) 2013-2025 Hercules Dev Team
 *
 * Hercules is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * NOTE: This file was auto-generated and should never be manually edited,
 *       as it will get overwritten.
 */

/* GENERATED FILE DO NOT EDIT */

struct HookingPointData HookingPoints[] = {
/* HCache_interface */
	{ HP_POP(HCache->init, HP_HCache_init) },
	{ HP_POP(HCache->check, HP_HCache_check) },
	{ HP_POP(HCache->open, HP_HCache_open) },
/* aclif_interface */
	{ HP_POP(aclif->init, HP_aclif_init) },
	{ HP_POP(aclif->final, HP_aclif_final) },
	{ HP_POP(aclif->setip, HP_aclif_setip) },
	{ HP_POP(aclif->setbindip, HP_aclif_setbindip) },
	{ HP_POP(aclif->setport, HP_aclif_setport) },
	{ HP_POP(aclif->refresh_ip, HP_aclif_refresh_ip) },
	{ HP_POP(aclif->parse, HP_aclif_parse) },
	{ HP_POP(aclif->parse_request, HP_aclif_parse_request) },
	{ HP_POP(aclif->terminate_connection, HP_aclif_terminate_connection) },
	{ HP_POP(aclif->connected, HP_aclif_connected) },
	{ HP_POP(aclif->socket_secure_check, HP_aclif_socket_secure_check) },
	{ HP_POP(aclif->session_delete, HP_aclif_session_delete) },
	{ HP_POP(aclif->init_handlers, HP_aclif_init_handlers) },
	{ HP_POP(aclif->register_handlers, HP_aclif_register_handlers) },
	{ HP_POP(aclif->add_handler, HP_aclif_add_handler) },
	{ HP_POP(aclif->add_packet_handler, HP_aclif_add_packet_handler) },
	{ HP_POP(aclif->set_url, HP_aclif_set_url) },
	{ HP_POP(aclif->set_body, HP_aclif_set_body) },
	{ HP_POP(aclif->set_header_name, HP_aclif_set_header_name) },
	{ HP_POP(aclif->set_header_value, HP_aclif_set_header_value) },
	{ HP_POP(aclif->set_post_header_name, HP_aclif_set_post_header_name) },
	{ HP_POP(aclif->set_post_header_value, HP_aclif_set_post_header_value) },
	{ HP_POP(aclif->set_post_header_data, HP_aclif_set_post_header_data) },
	{ HP_POP(aclif->check_header, HP_aclif_check_header) },
	{ HP_POP(aclif->multi_part_start, HP_aclif_multi_part_start) },
	{ HP_POP(aclif->multi_part_complete, HP_aclif_multi_part_complete) },
	{ HP_POP(aclif->multi_body_complete, HP_aclif_multi_body_complete) },
	{ HP_POP(aclif->post_headers_destroy_sub, HP_aclif_post_headers_destroy_sub) },
	{ HP_POP(aclif->reportError, HP_aclif_reportError) },
	{ HP_POP(aclif->check_headers, HP_aclif_check_headers) },
	{ HP_POP(aclif->decode_post_headers, HP_aclif_decode_post_headers) },
	{ HP_POP(aclif->print_header, HP_aclif_print_header) },
	{ HP_POP(aclif->is_post_header_present, HP_aclif_is_post_header_present) },
	{ HP_POP(aclif->is_post_header_present_or_empty, HP_aclif_is_post_header_present_or_empty) },
	{ HP_POP(aclif->get_post_header_data_int, HP_aclif_get_post_header_data_int) },
	{ HP_POP(aclif->get_post_header_data_str, HP_aclif_get_post_header_data_str) },
	{ HP_POP(aclif->get_post_header_data_json, HP_aclif_get_post_header_data_json) },
	{ HP_POP(aclif->get_post_header_content_type, HP_aclif_get_post_header_content_type) },
	{ HP_POP(aclif->get_post_headers_count, HP_aclif_get_post_headers_count) },
	{ HP_POP(aclif->ret_post_header_data_int, HP_aclif_ret_post_header_data_int) },
	{ HP_POP(aclif->get_valid_header_data_int, HP_aclif_get_valid_header_data_int) },
	{ HP_POP(aclif->get_valid_header_data_str, HP_aclif_get_valid_header_data_str) },
	{ HP_POP(aclif->get_valid_header_data_json, HP_aclif_get_valid_header_data_json) },
	{ HP_POP(aclif->get_valid_header_content_type, HP_aclif_get_valid_header_content_type) },
	{ HP_POP(aclif->ret_valid_header_data_int, HP_aclif_ret_valid_header_data_int) },
	{ HP_POP(aclif->delete_online_player, HP_aclif_delete_online_player) },
	{ HP_POP(aclif->real_delete_online_player, HP_aclif_real_delete_online_player) },
	{ HP_POP(aclif->add_online_player, HP_aclif_add_online_player) },
	{ HP_POP(aclif->add_online_char, HP_aclif_add_online_char) },
	{ HP_POP(aclif->create_online_login_data, HP_aclif_create_online_login_data) },
	{ HP_POP(aclif->add_char_server, HP_aclif_add_char_server) },
	{ HP_POP(aclif->remove_char_server, HP_aclif_remove_char_server) },
	{ HP_POP(aclif->purge_disconnected_users, HP_aclif_purge_disconnected_users) },
	{ HP_POP(aclif->purge_disconnected_user, HP_aclif_purge_disconnected_user) },
	{ HP_POP(aclif->get_char_server_id, HP_aclif_get_char_server_id) },
	{ HP_POP(aclif->add_remove_timer, HP_aclif_add_remove_timer) },
	{ HP_POP(aclif->remove_remove_timer, HP_aclif_remove_remove_timer) },
	{ HP_POP(aclif->get_first_world_name, HP_aclif_get_first_world_name) },
	{ HP_POP(aclif->show_request, HP_aclif_show_request) },
/* aloginif_interface */
	{ HP_POP(aloginif->init, HP_aloginif_init) },
	{ HP_POP(aloginif->final, HP_aloginif_final) },
	{ HP_POP(aloginif->setuserid, HP_aloginif_setuserid) },
	{ HP_POP(aloginif->setpasswd, HP_aloginif_setpasswd) },
	{ HP_POP(aloginif->checkdefaultlogin, HP_aloginif_checkdefaultlogin) },
	{ HP_POP(aloginif->setip, HP_aloginif_setip) },
	{ HP_POP(aloginif->setport, HP_aloginif_setport) },
	{ HP_POP(aloginif->connect_to_server, HP_aloginif_connect_to_server) },
	{ HP_POP(aloginif->on_disconnect, HP_aloginif_on_disconnect) },
	{ HP_POP(aloginif->keepalive, HP_aloginif_keepalive) },
	{ HP_POP(aloginif->on_ready, HP_aloginif_on_ready) },
	{ HP_POP(aloginif->send_to_server, HP_aloginif_send_to_server) },
	{ HP_POP(aloginif->send_split_to_server, HP_aloginif_send_split_to_server) },
	{ HP_POP(aloginif->parse, HP_aloginif_parse) },
	{ HP_POP(aloginif->parse_connection_state, HP_aloginif_parse_connection_state) },
	{ HP_POP(aloginif->parse_pong, HP_aloginif_parse_pong) },
	{ HP_POP(aloginif->parse_disconnect_user, HP_aloginif_parse_disconnect_user) },
	{ HP_POP(aloginif->parse_connect_user, HP_aloginif_parse_connect_user) },
	{ HP_POP(aloginif->parse_char_servers_list, HP_aloginif_parse_char_servers_list) },
	{ HP_POP(aloginif->parse_add_char_server, HP_aloginif_parse_add_char_server) },
	{ HP_POP(aloginif->parse_remove_char_server, HP_aloginif_parse_remove_char_server) },
	{ HP_POP(aloginif->parse_proxy_from_char_server, HP_aloginif_parse_proxy_from_char_server) },
	{ HP_POP(aloginif->parse_set_char_online, HP_aloginif_parse_set_char_online) },
	{ HP_POP(aloginif->parse_from_char, HP_aloginif_parse_from_char) },
/* api_interface */
	{ HP_POP(api->setipport, HP_api_setipport) },
	{ HP_POP(api->config_read, HP_api_config_read) },
	{ HP_POP(api->config_read_console, HP_api_config_read_console) },
	{ HP_POP(api->config_read_connection, HP_api_config_read_connection) },
	{ HP_POP(api->config_read_inter, HP_api_config_read_inter) },
	{ HP_POP(api->check_connect_login_server, HP_api_check_connect_login_server) },
	{ HP_POP(api->do_shutdown, HP_api_do_shutdown) },
/* base62_interface */
	{ HP_POP(base62->encode_int_padded, HP_base62_encode_int_padded) },
/* cmdline_interface */
	{ HP_POP(cmdline->init, HP_cmdline_init) },
	{ HP_POP(cmdline->final, HP_cmdline_final) },
	{ HP_POP(cmdline->arg_add, HP_cmdline_arg_add) },
	{ HP_POP(cmdline->exec, HP_cmdline_exec) },
	{ HP_POP(cmdline->arg_next_value, HP_cmdline_arg_next_value) },
	{ HP_POP(cmdline->arg_source, HP_cmdline_arg_source) },
/* console_interface */
	{ HP_POP(console->init, HP_console_init) },
	{ HP_POP(console->final, HP_console_final) },
	{ HP_POP(console->display_title, HP_console_display_title) },
	{ HP_POP(console->display_gplnotice, HP_console_display_gplnotice) },
/* core_interface */
	{ HP_POP(core->shutdown_callback, HP_core_shutdown_callback) },
/* db_interface */
	{ HP_POP(DB->fix_options, HP_DB_fix_options) },
	{ HP_POP(DB->default_cmp, HP_DB_default_cmp) },
	{ HP_POP(DB->default_hash, HP_DB_default_hash) },
	{ HP_POP(DB->default_release, HP_DB_default_release) },
	{ HP_POP(DB->custom_release, HP_DB_custom_release) },
	{ HP_POP(DB->alloc, HP_DB_alloc) },
	{ HP_POP(DB->i2key, HP_DB_i2key) },
	{ HP_POP(DB->ui2key, HP_DB_ui2key) },
	{ HP_POP(DB->str2key, HP_DB_str2key) },
	{ HP_POP(DB->i642key, HP_DB_i642key) },
	{ HP_POP(DB->ui642key, HP_DB_ui642key) },
	{ HP_POP(DB->i2data, HP_DB_i2data) },
	{ HP_POP(DB->ui2data, HP_DB_ui2data) },
	{ HP_POP(DB->ptr2data, HP_DB_ptr2data) },
	{ HP_POP(DB->data2i, HP_DB_data2i) },
	{ HP_POP(DB->data2ui, HP_DB_data2ui) },
	{ HP_POP(DB->data2ptr, HP_DB_data2ptr) },
	{ HP_POP(DB->init, HP_DB_init) },
	{ HP_POP(DB->final, HP_DB_final) },
/* des_interface */
	{ HP_POP(des->decrypt_block, HP_des_decrypt_block) },
	{ HP_POP(des->decrypt, HP_des_decrypt) },
/* extraconf_interface */
	{ HP_POP(extraconf->init, HP_extraconf_init) },
	{ HP_POP(extraconf->final, HP_extraconf_final) },
	{ HP_POP(extraconf->read_conf_file, HP_extraconf_read_conf_file) },
	{ HP_POP(extraconf->read_conf, HP_extraconf_read_conf) },
	{ HP_POP(extraconf->read_vars, HP_extraconf_read_vars) },
	{ HP_POP(extraconf->set_var, HP_extraconf_set_var) },
	{ HP_POP(extraconf->set_var_str, HP_extraconf_set_var_str) },
	{ HP_POP(extraconf->read_emblems, HP_extraconf_read_emblems) },
/* handlers_interface */
	{ HP_POP(handlers->init, HP_handlers_init) },
	{ HP_POP(handlers->final, HP_handlers_final) },
	{ HP_POP(handlers->sendHotkeyV2Tab, HP_handlers_sendHotkeyV2Tab) },
	{ HP_POP(handlers->hotkeyTabIdToName, HP_handlers_hotkeyTabIdToName) },
	{ HP_POP(handlers->parse_userconfig_load, HP_handlers_parse_userconfig_load) },
	{ HP_POP(handlers->userconfig_load, HP_handlers_userconfig_load) },
	{ HP_POP(handlers->parse_userconfig_save, HP_handlers_parse_userconfig_save) },
	{ HP_POP(handlers->userconfig_save, HP_handlers_userconfig_save) },
	{ HP_POP(handlers->parse_charconfig_load, HP_handlers_parse_charconfig_load) },
	{ HP_POP(handlers->charconfig_load, HP_handlers_charconfig_load) },
	{ HP_POP(handlers->parse_emblem_upload, HP_handlers_parse_emblem_upload) },
	{ HP_POP(handlers->emblem_upload, HP_handlers_emblem_upload) },
	{ HP_POP(handlers->parse_emblem_download, HP_handlers_parse_emblem_download) },
	{ HP_POP(handlers->emblem_download, HP_handlers_emblem_download) },
	{ HP_POP(handlers->parse_party_list, HP_handlers_parse_party_list) },
	{ HP_POP(handlers->party_list, HP_handlers_party_list) },
	{ HP_POP(handlers->parse_party_get, HP_handlers_parse_party_get) },
	{ HP_POP(handlers->party_get, HP_handlers_party_get) },
	{ HP_POP(handlers->parse_party_add, HP_handlers_parse_party_add) },
	{ HP_POP(handlers->party_add, HP_handlers_party_add) },
	{ HP_POP(handlers->parse_party_del, HP_handlers_parse_party_del) },
	{ HP_POP(handlers->party_del, HP_handlers_party_del) },
	{ HP_POP(handlers->parse_party_info, HP_handlers_parse_party_info) },
	{ HP_POP(handlers->party_info, HP_handlers_party_info) },
	{ HP_POP(handlers->parse_test_url, HP_handlers_parse_test_url) },
	{ HP_POP(handlers->userconfig_load_emotes, HP_handlers_userconfig_load_emotes) },
	{ HP_POP(handlers->userconfig_load_hotkeys, HP_handlers_userconfig_load_hotkeys) },
/* httpparser_interface */
	{ HP_POP(httpparser->init, HP_httpparser_init) },
	{ HP_POP(httpparser->final, HP_httpparser_final) },
	{ HP_POP(httpparser->parse, HP_httpparser_parse) },
	{ HP_POP(httpparser->parse_real, HP_httpparser_parse_real) },
	{ HP_POP(httpparser->add_to_temp_request, HP_httpparser_add_to_temp_request) },
	{ HP_POP(httpparser->search_request_line_end, HP_httpparser_search_request_line_end) },
	{ HP_POP(httpparser->multi_parse, HP_httpparser_multi_parse) },
	{ HP_POP(httpparser->init_parser, HP_httpparser_init_parser) },
	{ HP_POP(httpparser->show_error, HP_httpparser_show_error) },
	{ HP_POP(httpparser->init_multi_parser, HP_httpparser_init_multi_parser) },
	{ HP_POP(httpparser->delete_parser, HP_httpparser_delete_parser) },
	{ HP_POP(httpparser->init_settings, HP_httpparser_init_settings) },
	{ HP_POP(httpparser->init_multi_settings, HP_httpparser_init_multi_settings) },
	{ HP_POP(httpparser->get_method_str, HP_httpparser_get_method_str) },
	{ HP_POP(httpparser->get_method, HP_httpparser_get_method) },
	{ HP_POP(httpparser->on_message_begin, HP_httpparser_on_message_begin) },
	{ HP_POP(httpparser->on_headers_complete, HP_httpparser_on_headers_complete) },
	{ HP_POP(httpparser->on_message_complete, HP_httpparser_on_message_complete) },
	{ HP_POP(httpparser->on_chunk_header, HP_httpparser_on_chunk_header) },
	{ HP_POP(httpparser->on_chunk_complete, HP_httpparser_on_chunk_complete) },
	{ HP_POP(httpparser->on_url, HP_httpparser_on_url) },
	{ HP_POP(httpparser->on_status, HP_httpparser_on_status) },
	{ HP_POP(httpparser->on_header_field, HP_httpparser_on_header_field) },
	{ HP_POP(httpparser->on_header_value, HP_httpparser_on_header_value) },
	{ HP_POP(httpparser->on_body, HP_httpparser_on_body) },
	{ HP_POP(httpparser->on_multi_body_begin, HP_httpparser_on_multi_body_begin) },
	{ HP_POP(httpparser->on_multi_part_begin, HP_httpparser_on_multi_part_begin) },
	{ HP_POP(httpparser->on_multi_header_field, HP_httpparser_on_multi_header_field) },
	{ HP_POP(httpparser->on_multi_header_value, HP_httpparser_on_multi_header_value) },
	{ HP_POP(httpparser->on_multi_headers_complete, HP_httpparser_on_multi_headers_complete) },
	{ HP_POP(httpparser->on_multi_data, HP_httpparser_on_multi_data) },
	{ HP_POP(httpparser->on_multi_part_end, HP_httpparser_on_multi_part_end) },
	{ HP_POP(httpparser->on_multi_body_end, HP_httpparser_on_multi_body_end) },
/* httpsender_interface */
	{ HP_POP(httpsender->init, HP_httpsender_init) },
	{ HP_POP(httpsender->final, HP_httpsender_final) },
	{ HP_POP(httpsender->http_status_name, HP_httpsender_http_status_name) },
	{ HP_POP(httpsender->send_continue, HP_httpsender_send_continue) },
	{ HP_POP(httpsender->send_plain, HP_httpsender_send_plain) },
	{ HP_POP(httpsender->send_html, HP_httpsender_send_html) },
	{ HP_POP(httpsender->send_json, HP_httpsender_send_json) },
	{ HP_POP(httpsender->send_json_text, HP_httpsender_send_json_text) },
	{ HP_POP(httpsender->send_binary, HP_httpsender_send_binary) },
/* imageparser_interface */
	{ HP_POP(imageparser->init, HP_imageparser_init) },
	{ HP_POP(imageparser->final, HP_imageparser_final) },
	{ HP_POP(imageparser->validate_bmp_emblem, HP_imageparser_validate_bmp_emblem) },
	{ HP_POP(imageparser->validate_gif_emblem, HP_imageparser_validate_gif_emblem) },
	{ HP_POP(imageparser->read_gif_func, HP_imageparser_read_gif_func) },
/* jsonparser_interface */
	{ HP_POP(jsonparser->init, HP_jsonparser_init) },
	{ HP_POP(jsonparser->final, HP_jsonparser_final) },
	{ HP_POP(jsonparser->parse, HP_jsonparser_parse) },
	{ HP_POP(jsonparser->print, HP_jsonparser_print) },
	{ HP_POP(jsonparser->get_string, HP_jsonparser_get_string) },
	{ HP_POP(jsonparser->get_formatted_string, HP_jsonparser_get_formatted_string) },
	{ HP_POP(jsonparser->is_null, HP_jsonparser_is_null) },
	{ HP_POP(jsonparser->is_null_or_missing, HP_jsonparser_is_null_or_missing) },
	{ HP_POP(jsonparser->get, HP_jsonparser_get) },
	{ HP_POP(jsonparser->get_array_size, HP_jsonparser_get_array_size) },
	{ HP_POP(jsonparser->get_string_value, HP_jsonparser_get_string_value) },
	{ HP_POP(jsonparser->get_number_value, HP_jsonparser_get_number_value) },
	{ HP_POP(jsonparser->get_int_value, HP_jsonparser_get_int_value) },
	{ HP_POP(jsonparser->get_child_string_value, HP_jsonparser_get_child_string_value) },
	{ HP_POP(jsonparser->get_child_number_value, HP_jsonparser_get_child_number_value) },
	{ HP_POP(jsonparser->get_child_int_value, HP_jsonparser_get_child_int_value) },
	{ HP_POP(jsonparser->free, HP_jsonparser_free) },
	{ HP_POP(jsonparser->delete, HP_jsonparser_delete) },
/* jsonwriter_interface */
	{ HP_POP(jsonwriter->init, HP_jsonwriter_init) },
	{ HP_POP(jsonwriter->final, HP_jsonwriter_final) },
	{ HP_POP(jsonwriter->create, HP_jsonwriter_create) },
	{ HP_POP(jsonwriter->create_empty, HP_jsonwriter_create_empty) },
	{ HP_POP(jsonwriter->new_array, HP_jsonwriter_new_array) },
	{ HP_POP(jsonwriter->new_object, HP_jsonwriter_new_object) },
	{ HP_POP(jsonwriter->new_string, HP_jsonwriter_new_string) },
	{ HP_POP(jsonwriter->new_number, HP_jsonwriter_new_number) },
	{ HP_POP(jsonwriter->new_null, HP_jsonwriter_new_null) },
	{ HP_POP(jsonwriter->add_node, HP_jsonwriter_add_node) },
	{ HP_POP(jsonwriter->add_node_to_array, HP_jsonwriter_add_node_to_array) },
	{ HP_POP(jsonwriter->add_new_array, HP_jsonwriter_add_new_array) },
	{ HP_POP(jsonwriter->add_new_object, HP_jsonwriter_add_new_object) },
	{ HP_POP(jsonwriter->add_new_null, HP_jsonwriter_add_new_null) },
	{ HP_POP(jsonwriter->add_new_number, HP_jsonwriter_add_new_number) },
	{ HP_POP(jsonwriter->add_new_string, HP_jsonwriter_add_new_string) },
	{ HP_POP(jsonwriter->add_new_string_to_array, HP_jsonwriter_add_new_string_to_array) },
	{ HP_POP(jsonwriter->add_new_object_to_array, HP_jsonwriter_add_new_object_to_array) },
	{ HP_POP(jsonwriter->print, HP_jsonwriter_print) },
	{ HP_POP(jsonwriter->get, HP_jsonwriter_get) },
	{ HP_POP(jsonwriter->get_string, HP_jsonwriter_get_string) },
	{ HP_POP(jsonwriter->get_formatted_string, HP_jsonwriter_get_formatted_string) },
	{ HP_POP(jsonwriter->free, HP_jsonwriter_free) },
	{ HP_POP(jsonwriter->delete, HP_jsonwriter_delete) },
/* libconfig_interface */
	{ HP_POP(libconfig->set_db_path, HP_libconfig_set_db_path) },
	{ HP_POP(libconfig->format_db_path, HP_libconfig_format_db_path) },
	{ HP_POP(libconfig->read, HP_libconfig_read) },
	{ HP_POP(libconfig->write, HP_libconfig_write) },
	{ HP_POP(libconfig->set_options, HP_libconfig_set_options) },
	{ HP_POP(libconfig->get_options, HP_libconfig_get_options) },
	{ HP_POP(libconfig->read_string, HP_libconfig_read_string) },
	{ HP_POP(libconfig->read_file_src, HP_libconfig_read_file_src) },
	{ HP_POP(libconfig->write_file, HP_libconfig_write_file) },
	{ HP_POP(libconfig->set_destructor, HP_libconfig_set_destructor) },
	{ HP_POP(libconfig->set_include_dir, HP_libconfig_set_include_dir) },
	{ HP_POP(libconfig->init, HP_libconfig_init) },
	{ HP_POP(libconfig->destroy, HP_libconfig_destroy) },
	{ HP_POP(libconfig->setting_get_int, HP_libconfig_setting_get_int) },
	{ HP_POP(libconfig->setting_get_int64, HP_libconfig_setting_get_int64) },
	{ HP_POP(libconfig->setting_get_float, HP_libconfig_setting_get_float) },
	{ HP_POP(libconfig->setting_get_bool, HP_libconfig_setting_get_bool) },
	{ HP_POP(libconfig->setting_get_string, HP_libconfig_setting_get_string) },
	{ HP_POP(libconfig->setting_lookup, HP_libconfig_setting_lookup) },
	{ HP_POP(libconfig->setting_lookup_int, HP_libconfig_setting_lookup_int) },
	{ HP_POP(libconfig->setting_lookup_int64, HP_libconfig_setting_lookup_int64) },
	{ HP_POP(libconfig->setting_lookup_float, HP_libconfig_setting_lookup_float) },
	{ HP_POP(libconfig->setting_lookup_bool, HP_libconfig_setting_lookup_bool) },
	{ HP_POP(libconfig->setting_lookup_string, HP_libconfig_setting_lookup_string) },
	{ HP_POP(libconfig->setting_set_int, HP_libconfig_setting_set_int) },
	{ HP_POP(libconfig->setting_set_int64, HP_libconfig_setting_set_int64) },
	{ HP_POP(libconfig->setting_set_float, HP_libconfig_setting_set_float) },
	{ HP_POP(libconfig->setting_set_bool, HP_libconfig_setting_set_bool) },
	{ HP_POP(libconfig->setting_set_string, HP_libconfig_setting_set_string) },
	{ HP_POP(libconfig->setting_set_format, HP_libconfig_setting_set_format) },
	{ HP_POP(libconfig->setting_get_format, HP_libconfig_setting_get_format) },
	{ HP_POP(libconfig->setting_get_int_elem, HP_libconfig_setting_get_int_elem) },
	{ HP_POP(libconfig->setting_get_int64_elem, HP_libconfig_setting_get_int64_elem) },
	{ HP_POP(libconfig->setting_get_float_elem, HP_libconfig_setting_get_float_elem) },
	{ HP_POP(libconfig->setting_get_bool_elem, HP_libconfig_setting_get_bool_elem) },
	{ HP_POP(libconfig->setting_get_string_elem, HP_libconfig_setting_get_string_elem) },
	{ HP_POP(libconfig->setting_set_int_elem, HP_libconfig_setting_set_int_elem) },
	{ HP_POP(libconfig->setting_set_int64_elem, HP_libconfig_setting_set_int64_elem) },
	{ HP_POP(libconfig->setting_set_float_elem, HP_libconfig_setting_set_float_elem) },
	{ HP_POP(libconfig->setting_set_bool_elem, HP_libconfig_setting_set_bool_elem) },
	{ HP_POP(libconfig->setting_set_string_elem, HP_libconfig_setting_set_string_elem) },
	{ HP_POP(libconfig->setting_index, HP_libconfig_setting_index) },
	{ HP_POP(libconfig->setting_length, HP_libconfig_setting_length) },
	{ HP_POP(libconfig->setting_get_elem, HP_libconfig_setting_get_elem) },
	{ HP_POP(libconfig->setting_get_member, HP_libconfig_setting_get_member) },
	{ HP_POP(libconfig->setting_add, HP_libconfig_setting_add) },
	{ HP_POP(libconfig->setting_remove, HP_libconfig_setting_remove) },
	{ HP_POP(libconfig->setting_remove_elem, HP_libconfig_setting_remove_elem) },
	{ HP_POP(libconfig->setting_set_hook, HP_libconfig_setting_set_hook) },
	{ HP_POP(libconfig->lookup, HP_libconfig_lookup) },
	{ HP_POP(libconfig->lookup_int, HP_libconfig_lookup_int) },
	{ HP_POP(libconfig->lookup_int64, HP_libconfig_lookup_int64) },
	{ HP_POP(libconfig->lookup_float, HP_libconfig_lookup_float) },
	{ HP_POP(libconfig->lookup_bool, HP_libconfig_lookup_bool) },
	{ HP_POP(libconfig->lookup_string, HP_libconfig_lookup_string) },
	{ HP_POP(libconfig->load_file, HP_libconfig_load_file) },
	{ HP_POP(libconfig->setting_copy_simple, HP_libconfig_setting_copy_simple) },
	{ HP_POP(libconfig->setting_copy_elem, HP_libconfig_setting_copy_elem) },
	{ HP_POP(libconfig->setting_copy_aggregate, HP_libconfig_setting_copy_aggregate) },
	{ HP_POP(libconfig->setting_copy, HP_libconfig_setting_copy) },
	{ HP_POP(libconfig->setting_get_bool_real, HP_libconfig_setting_get_bool_real) },
	{ HP_POP(libconfig->setting_get_uint32, HP_libconfig_setting_get_uint32) },
	{ HP_POP(libconfig->setting_get_uint16, HP_libconfig_setting_get_uint16) },
	{ HP_POP(libconfig->setting_get_int16, HP_libconfig_setting_get_int16) },
	{ HP_POP(libconfig->setting_lookup_bool_real, HP_libconfig_setting_lookup_bool_real) },
	{ HP_POP(libconfig->setting_lookup_uint32, HP_libconfig_setting_lookup_uint32) },
	{ HP_POP(libconfig->setting_lookup_uint16, HP_libconfig_setting_lookup_uint16) },
	{ HP_POP(libconfig->setting_lookup_int16, HP_libconfig_setting_lookup_int16) },
	{ HP_POP(libconfig->setting_lookup_mutable_string, HP_libconfig_setting_lookup_mutable_string) },
	{ HP_POP(libconfig->lookup_mutable_string, HP_libconfig_lookup_mutable_string) },
/* md5_interface */
	{ HP_POP(md5->string, HP_md5_string) },
	{ HP_POP(md5->binary, HP_md5_binary) },
	{ HP_POP(md5->salt, HP_md5_salt) },
/* mutex_interface */
	{ HP_POP(mutex->create, HP_mutex_create) },
	{ HP_POP(mutex->destroy, HP_mutex_destroy) },
	{ HP_POP(mutex->lock, HP_mutex_lock) },
	{ HP_POP(mutex->trylock, HP_mutex_trylock) },
	{ HP_POP(mutex->unlock, HP_mutex_unlock) },
	{ HP_POP(mutex->cond_create, HP_mutex_cond_create) },
	{ HP_POP(mutex->cond_destroy, HP_mutex_cond_destroy) },
	{ HP_POP(mutex->cond_wait, HP_mutex_cond_wait) },
	{ HP_POP(mutex->cond_signal, HP_mutex_cond_signal) },
	{ HP_POP(mutex->cond_broadcast, HP_mutex_cond_broadcast) },
/* nullpo_interface */
	{ HP_POP(nullpo->init, HP_nullpo_init) },
	{ HP_POP(nullpo->final, HP_nullpo_final) },
	{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
/* packets_interface */
	{ HP_POP(packets->init, HP_packets_init) },
	{ HP_POP(packets->final, HP_packets_final) },
	{ HP_POP(packets->addLens, HP_packets_addLens) },
	{ HP_POP(packets->addLen, HP_packets_addLen) },
	{ HP_POP(packets->addLenIntif, HP_packets_addLenIntif) },
	{ HP_POP(packets->addLenInter, HP_packets_addLenInter) },
	{ HP_POP(packets->addLenChrif, HP_packets_addLenChrif) },
/* rnd_interface */
	{ HP_POP(rnd->init, HP_rnd_init) },
	{ HP_POP(rnd->final, HP_rnd_final) },
	{ HP_POP(rnd->seed, HP_rnd_seed) },
	{ HP_POP(rnd->random, HP_rnd_random) },
	{ HP_POP(rnd->roll, HP_rnd_roll) },
	{ HP_POP(rnd->value, HP_rnd_value) },
	{ HP_POP(rnd->uniform, HP_rnd_uniform) },
	{ HP_POP(rnd->uniform53, HP_rnd_uniform53) },
/* showmsg_interface */
	{ HP_POP(showmsg->init, HP_showmsg_init) },
	{ HP_POP(showmsg->final, HP_showmsg_final) },
	{ HP_POP(showmsg->clearScreen, HP_showmsg_clearScreen) },
	{ HP_POP(showmsg->showMessageV, HP_showmsg_showMessageV) },
	{ HP_POP(showmsg->getLogFileName, HP_showmsg_getLogFileName) },
/* socket_interface */
	{ HP_POP(sockt->init, HP_sockt_init) },
	{ HP_POP(sockt->final, HP_sockt_final) },
	{ HP_POP(sockt->perform, HP_sockt_perform) },
	{ HP_POP(sockt->datasync, HP_sockt_datasync) },
	{ HP_POP(sockt->make_listen_bind, HP_sockt_make_listen_bind) },
	{ HP_POP(sockt->make_connection, HP_sockt_make_connection) },
	{ HP_POP(sockt->realloc_fifo, HP_sockt_realloc_fifo) },
	{ HP_POP(sockt->realloc_writefifo, HP_sockt_realloc_writefifo) },
	{ HP_POP(sockt->wfifoset, HP_sockt_wfifoset) },
	{ HP_POP(sockt->wfifohead, HP_sockt_wfifohead) },
	{ HP_POP(sockt->rfifoskip, HP_sockt_rfifoskip) },
	{ HP_POP(sockt->close, HP_sockt_close) },
	{ HP_POP(sockt->validateWfifo, HP_sockt_validateWfifo) },
	{ HP_POP(sockt->session_is_valid, HP_sockt_session_is_valid) },
	{ HP_POP(sockt->session_is_active, HP_sockt_session_is_active) },
	{ HP_POP(sockt->create_session, HP_sockt_create_session) },
	{ HP_POP(sockt->delete_session, HP_sockt_delete_session) },
	{ HP_POP(sockt->flush, HP_sockt_flush) },
	{ HP_POP(sockt->flush_fifos, HP_sockt_flush_fifos) },
	{ HP_POP(sockt->connect_client, HP_sockt_connect_client) },
	{ HP_POP(sockt->set_nonblocking, HP_sockt_set_nonblocking) },
	{ HP_POP(sockt->set_defaultparse, HP_sockt_set_defaultparse) },
	{ HP_POP(sockt->set_default_client_connected, HP_sockt_set_default_client_connected) },
	{ HP_POP(sockt->set_default_delete, HP_sockt_set_default_delete) },
	{ HP_POP(sockt->host2ip, HP_sockt_host2ip) },
	{ HP_POP(sockt->ip2str, HP_sockt_ip2str) },
	{ HP_POP(sockt->str2ip, HP_sockt_str2ip) },
	{ HP_POP(sockt->ntows, HP_sockt_ntows) },
	{ HP_POP(sockt->getips, HP_sockt_getips) },
	{ HP_POP(sockt->eof, HP_sockt_eof) },
	{ HP_POP(sockt->lan_subnet_check, HP_sockt_lan_subnet_check) },
	{ HP_POP(sockt->allowed_ip_check, HP_sockt_allowed_ip_check) },
	{ HP_POP(sockt->trusted_ip_check, HP_sockt_trusted_ip_check) },
	{ HP_POP(sockt->net_config_read_sub, HP_sockt_net_config_read_sub) },
	{ HP_POP(sockt->net_config_read, HP_sockt_net_config_read) },
/* sql_interface */
	{ HP_POP(SQL->Connect, HP_SQL_Connect) },
	{ HP_POP(SQL->GetTimeout, HP_SQL_GetTimeout) },
	{ HP_POP(SQL->GetColumnNames, HP_SQL_GetColumnNames) },
	{ HP_POP(SQL->SetEncoding, HP_SQL_SetEncoding) },
	{ HP_POP(SQL->Ping, HP_SQL_Ping) },
	{ HP_POP(SQL->EscapeString, HP_SQL_EscapeString) },
	{ HP_POP(SQL->EscapeStringLen, HP_SQL_EscapeStringLen) },
	{ HP_POP(SQL->QueryV, HP_SQL_QueryV) },
	{ HP_POP(SQL->QueryStr, HP_SQL_QueryStr) },
	{ HP_POP(SQL->QueryStrFetch, HP_SQL_QueryStrFetch) },
	{ HP_POP(SQL->LastInsertId, HP_SQL_LastInsertId) },
	{ HP_POP(SQL->NumColumns, HP_SQL_NumColumns) },
	{ HP_POP(SQL->NumRows, HP_SQL_NumRows) },
	{ HP_POP(SQL->NextRow, HP_SQL_NextRow) },
	{ HP_POP(SQL->GetData, HP_SQL_GetData) },
	{ HP_POP(SQL->FreeResult, HP_SQL_FreeResult) },
	{ HP_POP(SQL->ShowDebug_, HP_SQL_ShowDebug_) },
	{ HP_POP(SQL->Free, HP_SQL_Free) },
	{ HP_POP(SQL->Malloc, HP_SQL_Malloc) },
	{ HP_POP(SQL->StmtMalloc, HP_SQL_StmtMalloc) },
	{ HP_POP(SQL->StmtPrepareV, HP_SQL_StmtPrepareV) },
	{ HP_POP(SQL->StmtPrepareStr, HP_SQL_StmtPrepareStr) },
	{ HP_POP(SQL->StmtNumParams, HP_SQL_StmtNumParams) },
	{ HP_POP(SQL->StmtBindParam, HP_SQL_StmtBindParam) },
	{ HP_POP(SQL->StmtExecute, HP_SQL_StmtExecute) },
	{ HP_POP(SQL->StmtLastInsertId, HP_SQL_StmtLastInsertId) },
	{ HP_POP(SQL->StmtNumColumns, HP_SQL_StmtNumColumns) },
	{ HP_POP(SQL->StmtBindColumn, HP_SQL_StmtBindColumn) },
	{ HP_POP(SQL->StmtNumRows, HP_SQL_StmtNumRows) },
	{ HP_POP(SQL->StmtNextRow, HP_SQL_StmtNextRow) },
	{ HP_POP(SQL->StmtFreeResult, HP_SQL_StmtFreeResult) },
	{ HP_POP(SQL->StmtFree, HP_SQL_StmtFree) },
	{ HP_POP(SQL->StmtShowDebug_, HP_SQL_StmtShowDebug_) },
/* stringbuf_interface */
	{ HP_POP(StrBuf->Malloc, HP_StrBuf_Malloc) },
	{ HP_POP(StrBuf->Init, HP_StrBuf_Init) },
	{ HP_POP(StrBuf->Vprintf, HP_StrBuf_Vprintf) },
	{ HP_POP(StrBuf->Append, HP_StrBuf_Append) },
	{ HP_POP(StrBuf->AppendStr, HP_StrBuf_AppendStr) },
	{ HP_POP(StrBuf->Length, HP_StrBuf_Length) },
	{ HP_POP(StrBuf->Value, HP_StrBuf_Value) },
	{ HP_POP(StrBuf->Clear, HP_StrBuf_Clear) },
	{ HP_POP(StrBuf->Destroy, HP_StrBuf_Destroy) },
	{ HP_POP(StrBuf->Free, HP_StrBuf_Free) },
/* strlib_interface */
	{ HP_POP(strlib->jstrescape, HP_strlib_jstrescape) },
	{ HP_POP(strlib->jstrescapecpy, HP_strlib_jstrescapecpy) },
	{ HP_POP(strlib->jmemescapecpy, HP_strlib_jmemescapecpy) },
	{ HP_POP(strlib->remove_control_chars_, HP_strlib_remove_control_chars_) },
	{ HP_POP(strlib->trim_, HP_strlib_trim_) },
	{ HP_POP(strlib->normalize_name_, HP_strlib_normalize_name_) },
	{ HP_POP(strlib->stristr_, HP_strlib_stristr_) },
	{ HP_POP(strlib->strnlen_, HP_strlib_strnlen_) },
	{ HP_POP(strlib->strtok_r_, HP_strlib_strtok_r_) },
	{ HP_POP(strlib->e_mail_check_, HP_strlib_e_mail_check_) },
	{ HP_POP(strlib->config_switch_, HP_strlib_config_switch_) },
	{ HP_POP(strlib->safestrncpy_, HP_strlib_safestrncpy_) },
	{ HP_POP(strlib->safestrnlen_, HP_strlib_safestrnlen_) },
	{ HP_POP(strlib->strline_, HP_strlib_strline_) },
	{ HP_POP(strlib->bin2hex_, HP_strlib_bin2hex_) },
/* sv_interface */
	{ HP_POP(sv->parse_next, HP_sv_parse_next) },
	{ HP_POP(sv->parse, HP_sv_parse) },
	{ HP_POP(sv->split, HP_sv_split) },
	{ HP_POP(sv->escape_c, HP_sv_escape_c) },
	{ HP_POP(sv->unescape_c, HP_sv_unescape_c) },
	{ HP_POP(sv->skip_escaped_c, HP_sv_skip_escaped_c) },
	{ HP_POP(sv->readdb, HP_sv_readdb) },
/* sysinfo_interface */
	{ HP_POP(sysinfo->getpagesize, HP_sysinfo_getpagesize) },
	{ HP_POP(sysinfo->platform, HP_sysinfo_platform) },
	{ HP_POP(sysinfo->osversion, HP_sysinfo_osversion) },
	{ HP_POP(sysinfo->cpu, HP_sysinfo_cpu) },
	{ HP_POP(sysinfo->cpucores, HP_sysinfo_cpucores) },
	{ HP_POP(sysinfo->arch, HP_sysinfo_arch) },
	{ HP_POP(sysinfo->is64bit, HP_sysinfo_is64bit) },
	{ HP_POP(sysinfo->compiler, HP_sysinfo_compiler) },
	{ HP_POP(sysinfo->cflags, HP_sysinfo_cflags) },
	{ HP_POP(sysinfo->time, HP_sysinfo_time) },
	{ HP_POP(sysinfo->vcstype, HP_sysinfo_vcstype) },
	{ HP_POP(sysinfo->vcstypeid, HP_sysinfo_vcstypeid) },
	{ HP_POP(sysinfo->vcsrevision_src, HP_sysinfo_vcsrevision_src) },
	{ HP_POP(sysinfo->vcsrevision_scripts, HP_sysinfo_vcsrevision_scripts) },
	{ HP_POP(sysinfo->build_revision, HP_sysinfo_build_revision) },
	{ HP_POP(sysinfo->fflags, HP_sysinfo_fflags) },
	{ HP_POP(sysinfo->vcsrevision_reload, HP_sysinfo_vcsrevision_reload) },
	{ HP_POP(sysinfo->is_superuser, HP_sysinfo_is_superuser) },
	{ HP_POP(sysinfo->zlib, HP_sysinfo_zlib) },
	{ HP_POP(sysinfo->init, HP_sysinfo_init) },
	{ HP_POP(sysinfo->final, HP_sysinfo_final) },
/* thread_interface */
	{ HP_POP(thread->init, HP_thread_init) },
	{ HP_POP(thread->final, HP_thread_final) },
	{ HP_POP(thread->create, HP_thread_create) },
	{ HP_POP(thread->create_opt, HP_thread_create_opt) },
	{ HP_POP(thread->destroy, HP_thread_destroy) },
	{ HP_POP(thread->self, HP_thread_self) },
	{ HP_POP(thread->get_tid, HP_thread_get_tid) },
	{ HP_POP(thread->wait, HP_thread_wait) },
	{ HP_POP(thread->prio_set, HP_thread_prio_set) },
	{ HP_POP(thread->prio_get, HP_thread_prio_get) },
	{ HP_POP(thread->yield, HP_thread_yield) },
/* timer_interface */
	{ HP_POP(timer->gettick, HP_timer_gettick) },
	{ HP_POP(timer->gettick_nocache, HP_timer_gettick_nocache) },
	{ HP_POP(timer->add, HP_timer_add) },
	{ HP_POP(timer->add_interval, HP_timer_add_interval) },
	{ HP_POP(timer->get, HP_timer_get) },
	{ HP_POP(timer->delete, HP_timer_delete) },
	{ HP_POP(timer->addtick, HP_timer_addtick) },
	{ HP_POP(timer->settick, HP_timer_settick) },
	{ HP_POP(timer->add_func_list, HP_timer_add_func_list) },
	{ HP_POP(timer->get_uptime, HP_timer_get_uptime) },
	{ HP_POP(timer->perform, HP_timer_perform) },
	{ HP_POP(timer->init, HP_timer_init) },
	{ HP_POP(timer->final, HP_timer_final) },
	{ HP_POP(timer->check_timers, HP_timer_check_timers) },
	{ HP_POP(timer->get_current_clocksource, HP_timer_get_current_clocksource) },
	{ HP_POP(timer->get_available_clocksource, HP_timer_get_available_clocksource) },
};

int HookingPointsLenMax = 40;
